//: C24:RTTIandNesting.cpp
// From Thinking in C++, 2nd Edition
// Available at http://www.BruceEckel.com
// (c) Bruce Eckel 1999
// Copyright notice in Copyright.txt
#include <iostream>
#include <typeinfo>
using namespace std;

class One
{
    class Nested {};
    Nested* n;
public:
    One() : n(new Nested) {}
    ~One() {
        delete n;
    }
    Nested* nested() {
        return n;
    }
};

int main()
{
    One o;
    cout << typeid(*o.nested()).name() << endl;
} ///:~
